Developing High-Level Irregularly-Parallel Programs for Multiple Architectures
نویسنده
چکیده
The variety of parallel architectures nowadays available implies that models for parallel software development should deliver acceptable performance on a range of architectures with minimal development effort. One approach is to use languages with very high level, and substantially architecture-independent, specification of parallel coordination. This paper presents a novel profiling-based methodology for developing irregularlyparallel applications for multiple architectures in languages with high-level coordination. The methodology has two main phases: an architecture-independent phase of idealised parallelisation, and an architecture-dependent phase of accurate performance prediction. The methodology has been distilled from the development of a dozen applications on various parallel machines. We have previously achieved good speedups with only minimal code changes: a speedup of 12.0 on a 16-processor workstation cluster and 2.8 on a 4-processor Sun SMP for a data-intensive program, and 11.9 on a 16-processor cluster for a symbolic computation application. The methodology is illustrated by developing a substantial application for two very different architectures: a Beowulf cluster and a Sun SMP. Seven alternative parallel versions of the program are developed and evaluated using a simulated idealised architecture. Realistic simulation of the two target architectures accurately predicts the version that delivers the best performance. While the speedups achieved for this program are modest, 7.5 on a 30-processor Beowulf and 1.8 on 1School of Mathematics and Computer Science, Heriot-Watt University, Edinburgh, UK; Phone: +44 (0)131-451-3435; Fax: +44 (0)131-451-3732; Email: {ceemka,hwloidl,trinder}@macs.hw.ac.uk
منابع مشابه
Towards an Adaptive Skeleton Framework for Performance Portability
The proliferation of widely available, but very different, parallel architectures makes the ability to deliver good parallel performance on a range of architectures, or performance portability, highly desirable. Irregularly-parallel problems, where the number and size of tasks is unpredictable, are particularly challenging and require dynamic coordination. The paper outlines a novel approach to...
متن کاملPLASMA: Portable Programming for SIMD Heterogeneous Accelerators
Data-parallel accelerators have emerged as highperformance alternatives to general-purpose processors for many applications. The Cell BE, GPUs from NVIDIA and ATI, and the like can outperform conventional superscalar architectures, but only for applications that can take advantage of these accelerators’ SIMD architectures, large number of cores, and local memories. Coupled with the SIMD extensi...
متن کاملDebugger for Multi-level Hybrid Parallel Programs on Heterogeneous Accelerator Cluster Architectures – Survey and Challenges
The need to debug hybrid parallel programs on heterogeneous accelerator clusters opens a new set of challenges for concurrently managing the processes and threads at node and accelerator levels. Currently, there exist open source debuggers for traditional HPC clusters, which support debugging of multi-node parallel programs. At present, debugging at the accelerator level is handled through lang...
متن کاملSystematic Development of Functional Bulk Synchronous Parallel Programs
With the current generalization of parallel architectures arises the concern of applying formal methods to parallelism, which allows specifications of parallel programs to be precisely stated and the correctness of an implementation to be verified. However, the complexity of parallel, compared to sequential, programs makes them more error-prone and difficult to verify. This calls for a strongly...
متن کاملA Research Statement
Improving the performance of programs is one of the chief aims in the computing eld. Systems software, including compilers, try to generate eecient transformations of high-level programs into lower-level machines. This turns out to be an ever-growing challenge as newer and more expressive languages continue to emerge and the target architectures provide more and more scope for higher degrees of...
متن کامل